package claseArreglos;

import junit.framework.Assert;
import org.junit.Test;

/*Ejercicio 1 de la guia arreglos*/
public class PruebaPronosticoSemanal {
	
	@Test
	public void testSetDia(){
		double temperatura = 10;
		int dia = 3;
		PronosticoSemanal pronostico = new PronosticoSemanal();
		
		pronostico.setTemperatura(dia, temperatura);
		
		Assert.assertEquals(temperatura, pronostico.getTemperatura(dia));
	}
	
	@Test
	public void testSetSemanaCompleta(){
		PronosticoSemanal pronostico = new PronosticoSemanal();
		
		pronostico.setTemperatura(1, 20.1);
		pronostico.setTemperatura(2, 21.0);
		pronostico.setTemperatura(3, 15.0);
		pronostico.setTemperatura(4, 30.3);
		pronostico.setTemperatura(5, 20.0);
		pronostico.setTemperatura(6, 35.0);
		pronostico.setTemperatura(7, 19.5);
		
		Assert.assertEquals(30.3, pronostico.getTemperatura(4));
	}
	
	@Test
	public void testTemperaturaPromedio(){
		PronosticoSemanal pronostico = new PronosticoSemanal();
		
		pronostico.setTemperatura(1, 20.1);
		pronostico.setTemperatura(2, 21.0);
		pronostico.setTemperatura(3, 15.0);
		pronostico.setTemperatura(4, 30.3);
		pronostico.setTemperatura(5, 20.0);
		pronostico.setTemperatura(6, 35.0);
		pronostico.setTemperatura(7, 19.5);
		double promedio = ((20.1 + 21.0 + 15.0 + 30.3 + 20.0 + 35.0 + 19.5) / 7);
		
		double temperaturaPromedio = pronostico.calcularTemperaturaPromedio();
		
		Assert.assertEquals(promedio,temperaturaPromedio);
	}
	
	@Test
	public void testTemperaturaMaxima(){
		PronosticoSemanal pronostico = new PronosticoSemanal();
		
		pronostico.setTemperatura(1, 20.1);
		pronostico.setTemperatura(2, 21.0);
		pronostico.setTemperatura(3, 15.0);
		pronostico.setTemperatura(4, 30.3);
		pronostico.setTemperatura(5, 20.0);
		pronostico.setTemperatura(6, 35.0);
		pronostico.setTemperatura(7, 19.5);
		
		double temperaturaMaxima = pronostico.buscarTemperaturaMaxima();
		
		Assert.assertEquals(35.0, temperaturaMaxima);
	}
	
	@Test
	public void testTemperaturaMinima(){
		PronosticoSemanal pronostico = new PronosticoSemanal();
		
		pronostico.setTemperatura(1, 20.1);
		pronostico.setTemperatura(2, 21.0);
		pronostico.setTemperatura(3, 15.0);
		pronostico.setTemperatura(4, 30.3);
		pronostico.setTemperatura(5, 20.0);
		pronostico.setTemperatura(6, 35.0);
		pronostico.setTemperatura(7, 19.5);
		
		double temperaturaMinima = pronostico.buscarTemperaturaMinima();
			
		Assert.assertEquals(15.0, temperaturaMinima);
	}

}
